06. Relevant tools
Heading
Tools and Environments
ND320 C3 L0 06 Tools Used In The Course
Summary of each
Tools and libraries
In this course, you will use standard data science/machine learning tools:
We will learn and use some of the libraries specific to medical imaging:
And some of the interactive tools for working with images and debugging networks :
Environments
For all the exercises and the final projects, all the tools and libraries will be available to you through Udacity Workspaces right here on this website, i.e. you do not have to worry about configuring anything locally or setting up some cloud-based infrastructure.
A. Udacity Environment
Everything is set up, but here are some notes on how to use the different functionality enabled for this course. Some workspaces will be available to you as Jupyter Notebooks that are ready to go. Some will provide an interactive web-based IDE where you will have to write code. And some will give you the ability to work with a remote desktop in the browser for when you need to use some interactive tools. Below are some notes on the types of workspaces that you will encounter and how to use their functionality.
GPU-based workspaces
Some workspaces will have GPU as an option for you to use. At the bottom left of that workspace you will be able to enable/disable the GPU. You will only be allocated a set amount of compute hours for the course so while you are just coding you should disable the GPU. And when you want to run any machine learning then you can run the GPU to speed that process up. Note that there will be only two workspaces in the course where GPU will really make a difference, you will be able to do fine without it in others.
VNC
This workspace will include the ability to access a virtual desktop over VNC server. These environments will use the GPU to access the VNC and the environment, medai
. You can also disable GPU when you are coding (and not running the code) or writing an explanation in the starter files. You will also be able access a couple of different functions listed below when it is necessary for the exercise:
- Jupyter Notebooks - In any terminal use the following command
bash launch_jupyter.sh
And from there you can find the URL contained in the box created by the asterisks(*) and paste this in the address bar of the web browser you are using to open a jupyter notebook with the relevant files in thehome
directory. - Slicer - This is an interactive desktop-based tool for viewing 3D medical images. If you would like to use it over the remote desktop, you will need to enable the GPU. Slicer is already configured on the VNC desktop so when you enter the virtual desktop via the Desktop button at the bottom right hand corner, you can find a Slicer as a shortcut on the desktop.
B. Local Machine
However, if you would like to run the exercises on your own local machines, below is a list of things you need to install on your local machine before running exercises.
First, you would need a Python 3.7+ environment with the following libraries:
- PyTorch (preferably with CUDA)
- nibabel
- matplotlib
- numpy
- pydicom
- Pillow (should be installed with pytorch)
- tensorboard
In the final lesson of the course, the exercises will have you work with some extra tools:
- 3D Slicer for viewing and annotating 3D volumes
- DCMTK tools for testing and emulating a medical imaging device. Note that if you are running a Linux distribution, you might be able to install dcmtk directly from the package manager (e.g.
apt-get install dcmtk
in Ubuntu)
Don’t worry too much about these for now if you choose to work in a local environment - we will introduce tools gradually as you go through the course, some with more detailed instructions, and you will have the chance to iteratively update your working environment.